home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1997 / MacHack 1997.toast / Hacks / Hacks ’96 / HyperHack - Allan Bonadio / HyperHack.cpp < prev    next >
C/C++ Source or Header  |  1996-06-22  |  1KB  |  58 lines

  1. #include <Resources.h>
  2. #include <Fonts.h>
  3. #include <Dialogs.h>
  4.  
  5.  
  6. void
  7. main()
  8. {
  9.     DialogTemplate **dlog;
  10.     Handle ditl;
  11.     unsigned char curname[100];
  12.     short id, ity;
  13.     short itemhit;
  14.     unsigned long t;
  15.     DialogPtr dwin;
  16.     Rect r;
  17.     Handle ihandle;
  18.     
  19.     InitGraf(&qd.thePort);
  20.     InitFonts();
  21.     FlushEvents( everyEvent, 0);
  22.     InitWindows();
  23.  
  24.     InitMenus();
  25.     TEInit();
  26.     InitDialogs(0);
  27.     
  28.     // start up and get the DLOG so we can munge it
  29.     OpenResFile("\pht");
  30.     dlog = (DialogTemplate **) GetResource('DLOG', 128);
  31.     
  32.     while (1)
  33.     {
  34.         // set it to the one we want
  35.         ditl = GetNamedResource('DITL', curname);
  36.         if (ditl)
  37.             GetResInfo(ditl, &id, &t, curname);
  38.         else
  39.             id = 128;
  40.         (*dlog)->itemsID = id;
  41.         
  42.         // Run the dialog
  43.         dwin = GetNewDialog(128, NULL, (WindowPtr) -1);
  44.         ModalDialog((ModalFilterUPP) 0, &itemhit);
  45.  
  46.         // Get the name of the next item
  47.         GetDialogItem(dwin, itemhit, &ity, &ihandle, &r);
  48.         if (ity == kButtonDialogItem)
  49.             GetControlTitle((ControlRef) ihandle, curname);
  50.         else if (ity == kPictureDialogItem)
  51.             GetResInfo(ihandle, &id, &t, curname);
  52.         
  53.         // go around again
  54.         DisposeDialog(dwin);
  55.     }
  56. }
  57.  
  58.